package cc.shacocloud.luanniao.web.model.dto.output

import cc.shacocloud.luanniao.core.model.constant.KnowledgeBaseTypeEnum
import java.time.LocalDateTime

/**
 *
 * @author 思追(shaco)
 */
data class KnowledgeBaseOutput(

    /**
     * 主键id
     */
    val id: Long,

    /**
     * 创建时间
     */
    val createTime: LocalDateTime,

    /**
     * 最后更新时间
     */
    val lastUpdateTime: LocalDateTime,

    /**
     * 名称
     */
    val name: String,

    /**
     * 知识库类型
     */
    val type: KnowledgeBaseTypeEnum,

    /**
     * 头像链接地址
     */
    val avatar: String? = null,

    /**
     * 知识库描述
     */
    val description: String? = null,

    /**
     * 父目录id
     */
    val parentId: Long? = null,

    /**
     * 创建者
     */
    val creator: UserOutput?,

    /**
     * 关联 ai 模型id，在类型不等于 [KnowledgeBaseTypeEnum.DIRECTORY] 时不可以为空
     */
    val aiModelId: Long,

    /**
     * 命名空间 id
     */
    val namespaceId: Long,
)
